JO
pedido

Dar items para todos jogadores online

Por JonatasLucasf, 02 de jun. de 2015 em Scripts

resolvido
script
10
1.2k
02 de junho de 2015 às 17:38

então como o titulo já diz queria um script que desse items para todos os jogadores que estiver online no servidor exemplo o ADM fala assim /additem ID,QUANTIDADE e todos jogadores online ganha o item.

 

USO TFS 1.1

Editado Junho 2 por JonatasLucasf

FurabioF
02 de junho de 2015 às 18:02

beurk.gif

-- <talkaction words="/addplayersonline" separator=" " script="arquivo.lua" />

function onSay(player, words, param)
  if player:getAccountType() <= ACCOUNT_TYPE_TUTOR then
    return true
  end
  local v = param:split(",")
  if #v ~= 2 then
    player:sendCancelMessage("Insufficient parameters.")
    return false
  end
  local item, count = v[1], v[2]
  for _, pid in pairs(Game.getPlayers()) do
    pid:AddItemId(v[1]:tonumber, v[2]:tonumber)
  end
  broadcastMessage("A equipe acaba de mandar " .. Item(v[1]):getItemName() .. " para todos os player online!", MESSAGE_STATUS_WARNING)
  return false
end  

Editado Junho 2 por Flavio S

02 de junho de 2015 às 18:28

 

beurk.gif

-- <talkaction words="/addplayersonline" separator=" " script="arquivo.lua" />

function onSay(player, words, param)
  if player:getAccountType() <= ACCOUNT_TYPE_TUTOR then
    return true
  end
  local v = param:split(",")
  if #v ~= 2 then
    player:sendCancelMessage("Insufficient parameters.")
    return false
  end
  local item, count = v[1], v[2]
  for _, pid in pairs(Game.getPlayers()) do
    pid:AddItemId(v[1]:tonumber, v[2]:tonumber)
  end
  broadcastMessage("A equipe acaba de mandar " .. Item(v[1]):getItemName() .. " para todos os player online!", MESSAGE_STATUS_WARNING)
  return false
end  

não funcionou deu erro na linha 12

FurabioF
02 de junho de 2015 às 18:29

mostra o erro néh pow, não sou vidente ...

02 de junho de 2015 às 18:31
[Warning - Event::checkScript] Can not load script: scripts/additem.lua

data/talkactions/scripts/additem.lua:12: function arguments expected near ','
02 de junho de 2015 às 19:03


function onSay(cid, words, param, channel)

local t = string.explode(param, ",")

if t[1] ~= nil and t[2] ~= nil then

local list = {}

for i, tid in ipairs(getPlayersOnline()) do

list = tid

end

for i = 1, #list do

doPlayerAddItem(list,t[1],t[2])

doBroadcastMessage(getPlayerName(cid) .. " Entregou: " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os jogadores online. Parabéns!")

end

else

doPlayerPopupFYI(cid, "No parm...\nSend:\n /additem itemid,how_much_items\nexample:\n /additem 2160,10")

end

return true

end


<talkaction log="yes" words="/additem" access="5" event="script" value="additem.lua"/>

Editado Junho 2 por FlamesAdmin

FurabioF
02 de junho de 2015 às 19:05
Melhor resposta


function onSay(player, words, param)

if player:getAccountType() <= ACCOUNT_TYPE_TUTOR then

return true

end

local v = param:split(",")

if #v ~= 2 then

player:sendCancelMessage("Insufficient parameters.")

return false

end

local item, count = v[1], v[2]

for _, pid in pairs(Game.getPlayers()) do

pid:addItem(tonumber(item), tonumber(count))

end

broadcastMessage("A equipe acaba de mandar um presente para todos os player online!", MESSAGE_STATUS_WARNING)

return false

end

zipter98Z
02 de junho de 2015 às 19:05

nvm já postaram

Editado Junho 2 por zipter98

02 de junho de 2015 às 19:08

Obrigado Flavio S funcionou 100%

 

@ FlamesAdmin é tfs 1.1 esse script que você postou é pra tfs 0.4, mais mesmo assim muito obrigado;

Editado Junho 2 por JonatasLucasf

FurabioF
02 de junho de 2015 às 19:09

nvm já postaram

 

HEUHUE

Tópico movido para a seção de dúvidas e pedidos resolvidos.